package grupobbva.pe.operhc.domain;

import static grupobbva.pe.operhc.util.Constant.*;
import grupobbva.pe.operhc.util.GenericObject;

import java.math.BigDecimal;
import java.util.List;

import org.apache.commons.lang.StringUtils;

public class Producto extends GenericObject{

	private String codProductoHdn;
	private String codProducto;
	private String desProducto;
	private String nivelaOferta;
	private String multCont;
	private String contrata;
	private String simula;
	private String desNivelaOferta;
	private String desMultCont;
	private String familia;
	
	private BigDecimal tasa;
	private Integer plazo;
	private BigDecimal cuota;
	private BigDecimal nuevaCuota;
	
	private List<ProductoPlazo> listProdPlazo;
			
	public String getCodProducto() {
		return codProducto;
	}
	public void setCodProducto(String codProducto) {
		this.codProducto = codProducto;
	}
	public String getDesProducto() {
		return desProducto;
	}
	public void setDesProducto(String desProducto) {
		this.desProducto = desProducto;
	}
	public String getNivelaOferta() {
		return nivelaOferta;
	}
	public void setNivelaOferta(String nivelaOferta) {
		this.nivelaOferta = nivelaOferta;
	}
	public String getMultCont() {
		return multCont;
	}
	public void setMultCont(String multCont) {
		this.multCont = multCont;
	}
	public String getDesNivelaOferta() {
		return desNivelaOferta;
	}
	public void setDesNivelaOferta(String desNivelaOferta) {
		this.desNivelaOferta = desNivelaOferta;
	}
	public String getDesMultCont() {
		return desMultCont;
	}
	public void setDesMultCont(String desMultCont) {
		this.desMultCont = desMultCont;
	}
	public String getCodProductoHdn() {
		return codProductoHdn;
	}
	public void setCodProductoHdn(String codProductoHdn) {
		this.codProductoHdn = codProductoHdn;
	}
	public String getFamilia() {
		return familia;
	}
	public void setFamilia(String familia) {
		this.familia = familia;
	}
	public List<ProductoPlazo> getListProdPlazo() {
		return listProdPlazo;
	}
	public void setListProdPlazo(List<ProductoPlazo> listProdPlazo) {
		this.listProdPlazo = listProdPlazo;
	}
	public String getContrata() {
		return contrata;
	}
	public void setContrata(String contrata) {
		this.contrata = contrata;
	}
	public String getSimula() {
		return simula;
	}
	public void setSimula(String simula) {
		this.simula = simula;
	}
	public BigDecimal getTasa() {
		return tasa;
	}
	public void setTasa(BigDecimal tasa) {
		this.tasa = tasa;
	}
	public Integer getPlazo() {
		return plazo;
	}
	public void setPlazo(Integer plazo) {
		this.plazo = plazo;
	}
	public BigDecimal getCuota() {
		return cuota;
	}
	public void setCuota(BigDecimal cuota) {
		this.cuota = cuota;
	}
	public BigDecimal getNuevaCuota() {
		return nuevaCuota;
	}
	public void setNuevaCuota(BigDecimal nuevaCuota) {
		this.nuevaCuota = nuevaCuota;
	}
	
	public Producto asignarTasaPlazoCuota(String productoInfo, String codigoProducto) {
		String strTasa = StringUtils.substring(productoInfo, 0, 10);
		String strPlazo = StringUtils.substring(productoInfo, 10, 14);
		String strCuota = StringUtils.substring(productoInfo, 14, 29);
		codProducto = codigoProducto;
		tasa = new BigDecimal(strTasa).divide(DIEZ_MILLON);
		plazo = Integer.valueOf(strPlazo);
		cuota = new BigDecimal(strCuota).divide(CIEN);
		return this;
	}
	
}